package com.tuling.jdkProxy;

import com.tuling.cglib.mapper.Dao;
import com.tuling.cglib.mapper.IDao;
import com.tuling.jdkProxy.proxy.DaoJdkProxy;

import java.lang.reflect.Proxy;

/***
 * @Author 徐庶   QQ:1092002729
 * @Slogan 致敬大师，致敬未来的你
 */
public class Client {


    public static void main(String[] args) {

        // 这个字段用于控制是否输出JDK动态代理自动生成的代理类文件
        System.setProperty("sun.misc.ProxyGenerator.saveGeneratedFiles","true");


        IDao dao = (IDao) Proxy.newProxyInstance(
                Dao.class.getClassLoader(),        // 代理类加载器
                Dao.class.getInterfaces(),         // 代理的接口
                new DaoJdkProxy(new Dao()));
        dao.select();// 会调用到 invoke 方法

    }
}
